home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Very Best of Atari Inside
/
The Very Best of Atari Inside 1.iso
/
mint
/
mntlb20
/
lib
/
getuid.c
< prev
next >
Wrap
C/C++ Source or Header
|
1992-05-15
|
1KB
|
71 lines
#include <sys/types.h>
#include <unistd.h>
#include <osbind.h>
#include <mintbind.h>
#include <errno.h>
extern int __mint;
static int __uid, __gid;
uid_t getuid() { return __mint ? Pgetuid() : __uid; }
gid_t getgid() { return __mint ? Pgetgid() : __gid; }
uid_t geteuid() { return getuid(); }
gid_t getegid() { return getgid(); }
int setuid(x)
int x;
{
long r;
if (__mint) {
r = Psetuid(x);
if (r) {
errno = -r;
return -1;
}
return 0;
}
__uid = x;
return 0;
}
int setgid(x)
int x;
{
long r;
if (__mint) {
r = Psetgid(x);
if (r) {
errno = -r;
return -1;
}
return 0;
}
__gid = x;
return 0;
}
int setreuid(ruid,euid)
int ruid, euid;
{
return setuid(euid);
}
int setregid(rgid,egid)
int rgid, egid;
{
return setgid(egid);
}
/* note: BSD getpgrp takes an argument, but ours doesn't */
int getpgrp() { return __mint ? Pgetpgrp() : 0; }
int setpgrp(pid, grp)
int pid, grp;
{
return __mint ? Psetpgrp(pid, grp) : 0;
}